Initial Setup Properties |
||
Common (Voice and Data) |
||
|
|
|
Voice Only |
||
Runtime Properties |
||
Common (Voice and Data) |
||
Voice Only |
||
Methods |
||
Common (Voice and Data) |
||
|
||
Voice Only |
||
|
||
Events |
||
Common (Voice and Data) |
||
|
|
|
Voice Only |
||
|
|
Overview
This control owns a group of telephone lines and receives and initiates calls on these lines. The channels can be set using the property page at design time or by allocating channels at runtime through the AddChannel and RemoveChannel methods. Line numbers start at one.
LineGroup also contains handlers for global conditions on a channel: invalid and silence time-outs, and call termination due to maximum call time or by the StopCall function.
LineGroup Channel Operating Modes
This control operates in three basic modes. All lines must start in the mode specified by the Mode property, but the lines can be changed at runtime using these methods: StartCall, WaitForRing, IdleChannel.
Start call after delay
A call is started on each channel allocated to this control either when the system starts or when the previous call on the channel completes. A delay is used after the termination of the previous call to ensure that the line is detected as on-hook by the telephone system before starting the next call. The control does not respond to Ring events. The next voice control in the chain is generally a Dial control to take the line off-hook and dial a number.
Wait for ring
For analog protocols, the control waits for the number of rings set by RingsToAnswer. For digital protocols the control waits for a call to be offered by the drivers, and RingsToAnswer is ignored. The line goes off-hook and passes the call to the next control. A Ring event is generated in the control before the line goes off-hook, to allow your code to perform call initialization and/or to override normal behavior (for example, to not answer the call if it is from your boss).
If CallerId and/or CallerName are available from the hardware, they are accessible using the CallerId and CallerName properties. If RingsToAnswer is set to zero (blank), the control does not detect ringing.
Idle
The control does not respond to Ring events or perform any action until the mode is changed or until the StartCall or WaitForRing methods are used. If a line is allocated to a LineGroup, but the mode is set to idle, the channel will be initialized on StartSystem, but will be immediately released, causing a Release event to occur.
Station Set Support
When the line type is set to Station Set, the LineGroup assumes a special mode of operation, designed specifically to control desktop phone sets. This mode is only possible when using appropriate hardware (currently the Dialogic MSI card).
In the Station Set mode, LineGroup monitors state of a phone rather than a CO line. Consequently, the Ring output node is replaced with the Offhook node and the call-flow starts (i.e. leaves the LineGroup) when the user lifts the receiver. For outgoing calls, this mode is used in combination with the Ring control. Please see the VBVoice Ring Control for more information.
Line Numbers and Names
Line numbers start from 1. When using TAPI, lines can be identified by name. The names of the TAPI lines available are provided in a property of this control.
LineGroup Control Examples
Use of the LineGroup control, specifically the CallerId property, is shown in the CallerID example.
SC Bus Switching
The CT/SC Bus interfaces, available on most cards, allow basic bridging functionality by interconnecting channels and resources. For more advanced conferencing applications, consider using a dedicated conferencing card or cards with conferencing resources with the VBVoice Conference control.
Line Bridging
Line bridging is the ability to connect two telephone lines in a way that two callers could talk. The bridging function is limited to two lines. When a line is bridged, the voice resource can listen to the line and detect digits or record, but cannot play to either caller.
Line Listening
Line listening is the ability to connect two telephone lines in a way that one caller (on the listening line) could hear another caller (on the broadcasting line), but the caller on the broadcasting line cannot hear the listener talk. The number of callers listening to a broadcaster is unlimited. When a line is listening, the voice resource can listen to the line and detect digits or record, but cannot play to either caller.
Full Conferencing versus Line Bridge and Listening
Full conferencing is the ability for many people (more than two) on the line to talk and be heard. It is provided as a special service of the telephone network. It can also be implemented by a separate conference card or can be built into the voice card. Full conferencing is provided using the VBVoice Conference control.
Monitoring Supervised dialling
Call-forwarding and toll-hopping applications must put a caller on-hold in a Delay control while dialling a number on a second line. It is often desirable to allow the on-hold caller to listen to the dialling progress tone (e.g. ringback) so they can decide whether to continue the call. If a bridge function is used to bridge the two calls before the call supervision is complete, the voice card will not be able to perform call supervision, because its link to the line interface will be broken. Instead, the caller should be connected in Listen mode to the outgoing line just before the dialling starts and when the call is connected, the two calls can be connected with a full bridge.